TSTP Solution File: SET609^3 by cvc5---1.0.5

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cvc5---1.0.5
% Problem  : SET609^3 : TPTP v8.1.2. Released v3.6.0.
% Transfm  : none
% Format   : tptp
% Command  : do_cvc5 %s %d

% Computer : n007.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Thu Aug 31 14:39:25 EDT 2023

% Result   : Theorem 2.54s 2.74s
% Output   : Proof 2.54s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.12/0.13  % Problem    : SET609^3 : TPTP v8.1.2. Released v3.6.0.
% 0.12/0.14  % Command    : do_cvc5 %s %d
% 0.14/0.35  % Computer : n007.cluster.edu
% 0.14/0.35  % Model    : x86_64 x86_64
% 0.14/0.35  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.35  % Memory   : 8042.1875MB
% 0.14/0.35  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.35  % CPULimit   : 300
% 0.14/0.35  % WCLimit    : 300
% 0.14/0.35  % DateTime   : Sat Aug 26 13:46:11 EDT 2023
% 0.14/0.35  % CPUTime    : 
% 0.21/0.48  %----Proving TH0
% 0.21/0.49  %------------------------------------------------------------------------------
% 0.21/0.49  % File     : SET609^3 : TPTP v8.1.2. Released v3.6.0.
% 0.21/0.49  % Domain   : Set Theory
% 0.21/0.49  % Problem  : X \ (Y \ Z) = (X \ Y) U X ^ Z
% 0.21/0.49  % Version  : [BS+08] axioms.
% 0.21/0.49  % English  : The difference of X and (the difference of Y and Z) is the union
% 0.21/0.49  %            of (the difference of X and Y) and the intersection of X and Z.
% 0.21/0.49  
% 0.21/0.49  % Refs     : [BS+05] Benzmueller et al. (2005), Can a Higher-Order and a Fi
% 0.21/0.49  %          : [BS+08] Benzmueller et al. (2008), Combined Reasoning by Autom
% 0.21/0.49  %          : [Ben08] Benzmueller (2008), Email to Geoff Sutcliffe
% 0.21/0.49  % Source   : [Ben08]
% 0.21/0.49  % Names    :
% 0.21/0.49  
% 0.21/0.49  % Status   : Theorem
% 0.21/0.49  % Rating   : 0.31 v8.1.0, 0.09 v7.5.0, 0.14 v7.4.0, 0.11 v7.2.0, 0.00 v7.1.0, 0.12 v7.0.0, 0.14 v6.4.0, 0.17 v6.3.0, 0.20 v6.2.0, 0.14 v5.5.0, 0.17 v5.4.0, 0.20 v5.3.0, 0.40 v5.2.0, 0.20 v4.1.0, 0.00 v4.0.1, 0.33 v3.7.0
% 0.21/0.49  % Syntax   : Number of formulae    :   29 (  15 unt;  14 typ;  14 def)
% 0.21/0.49  %            Number of atoms       :   41 (  19 equ;   0 cnn)
% 0.21/0.49  %            Maximal formula atoms :    1 (   2 avg)
% 0.21/0.49  %            Number of connectives :   46 (   5   ~;   3   |;   6   &;  31   @)
% 0.21/0.49  %                                         (   0 <=>;   1  =>;   0  <=;   0 <~>)
% 0.21/0.49  %            Maximal formula depth :    4 (   1 avg)
% 0.21/0.49  %            Number of types       :    2 (   0 usr)
% 0.21/0.49  %            Number of type conns  :   73 (  73   >;   0   *;   0   +;   0  <<)
% 0.21/0.49  %            Number of symbols     :   19 (  17 usr;   4 con; 0-3 aty)
% 0.21/0.49  %            Number of variables   :   38 (  32   ^;   4   !;   2   ?;  38   :)
% 0.21/0.49  % SPC      : TH0_THM_EQU_NAR
% 0.21/0.49  
% 0.21/0.49  % Comments : 
% 0.21/0.49  %------------------------------------------------------------------------------
% 0.21/0.49  %----Basic set theory definitions
% 0.21/0.49  %------------------------------------------------------------------------------
% 0.21/0.49  thf(in_decl,type,
% 0.21/0.49      in: $i > ( $i > $o ) > $o ).
% 0.21/0.49  
% 0.21/0.49  thf(in,definition,
% 0.21/0.49      ( in
% 0.21/0.49      = ( ^ [X: $i,M: $i > $o] : ( M @ X ) ) ) ).
% 0.21/0.49  
% 0.21/0.49  thf(is_a_decl,type,
% 0.21/0.49      is_a: $i > ( $i > $o ) > $o ).
% 0.21/0.49  
% 0.21/0.49  thf(is_a,definition,
% 0.21/0.49      ( is_a
% 0.21/0.49      = ( ^ [X: $i,M: $i > $o] : ( M @ X ) ) ) ).
% 0.21/0.49  
% 0.21/0.49  thf(emptyset_decl,type,
% 0.21/0.49      emptyset: $i > $o ).
% 0.21/0.49  
% 0.21/0.49  thf(emptyset,definition,
% 0.21/0.49      ( emptyset
% 0.21/0.49      = ( ^ [X: $i] : $false ) ) ).
% 0.21/0.49  
% 0.21/0.49  thf(unord_pair_decl,type,
% 0.21/0.49      unord_pair: $i > $i > $i > $o ).
% 0.21/0.49  
% 0.21/0.49  thf(unord_pair,definition,
% 0.21/0.49      ( unord_pair
% 0.21/0.49      = ( ^ [X: $i,Y: $i,U: $i] :
% 0.21/0.49            ( ( U = X )
% 0.21/0.49            | ( U = Y ) ) ) ) ).
% 0.21/0.49  
% 0.21/0.49  thf(singleton_decl,type,
% 0.21/0.49      singleton: $i > $i > $o ).
% 0.21/0.49  
% 0.21/0.49  thf(singleton,definition,
% 0.21/0.49      ( singleton
% 0.21/0.49      = ( ^ [X: $i,U: $i] : ( U = X ) ) ) ).
% 0.21/0.49  
% 0.21/0.49  thf(union_decl,type,
% 0.21/0.49      union: ( $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.21/0.49  
% 0.21/0.49  thf(union,definition,
% 0.21/0.49      ( union
% 0.21/0.49      = ( ^ [X: $i > $o,Y: $i > $o,U: $i] :
% 0.21/0.49            ( ( X @ U )
% 0.21/0.49            | ( Y @ U ) ) ) ) ).
% 0.21/0.49  
% 0.21/0.49  thf(excl_union_decl,type,
% 0.21/0.49      excl_union: ( $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.21/0.49  
% 0.21/0.49  thf(excl_union,definition,
% 0.21/0.49      ( excl_union
% 0.21/0.49      = ( ^ [X: $i > $o,Y: $i > $o,U: $i] :
% 0.21/0.49            ( ( ( X @ U )
% 0.21/0.49              & ~ ( Y @ U ) )
% 0.21/0.49            | ( ~ ( X @ U )
% 0.21/0.49              & ( Y @ U ) ) ) ) ) ).
% 0.21/0.49  
% 0.21/0.49  thf(intersection_decl,type,
% 0.21/0.49      intersection: ( $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.21/0.49  
% 0.21/0.49  thf(intersection,definition,
% 0.21/0.49      ( intersection
% 0.21/0.49      = ( ^ [X: $i > $o,Y: $i > $o,U: $i] :
% 0.21/0.49            ( ( X @ U )
% 0.21/0.49            & ( Y @ U ) ) ) ) ).
% 0.21/0.49  
% 0.21/0.49  thf(setminus_decl,type,
% 0.21/0.49      setminus: ( $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.21/0.49  
% 0.21/0.49  thf(setminus,definition,
% 0.21/0.49      ( setminus
% 0.21/0.49      = ( ^ [X: $i > $o,Y: $i > $o,U: $i] :
% 0.21/0.49            ( ( X @ U )
% 0.21/0.49            & ~ ( Y @ U ) ) ) ) ).
% 0.21/0.49  
% 0.21/0.49  thf(complement_decl,type,
% 0.21/0.49      complement: ( $i > $o ) > $i > $o ).
% 0.21/0.49  
% 0.21/0.49  thf(complement,definition,
% 0.21/0.49      ( complement
% 0.21/0.49      = ( ^ [X: $i > $o,U: $i] :
% 0.21/0.49            ~ ( X @ U ) ) ) ).
% 0.21/0.49  
% 0.21/0.49  thf(disjoint_decl,type,
% 0.21/0.49      disjoint: ( $i > $o ) > ( $i > $o ) > $o ).
% 0.21/0.49  
% 0.21/0.49  thf(disjoint,definition,
% 0.21/0.49      ( disjoint
% 0.21/0.49      = ( ^ [X: $i > $o,Y: $i > $o] :
% 0.21/0.49            ( ( intersection @ X @ Y )
% 0.21/0.49            = emptyset ) ) ) ).
% 0.21/0.49  
% 0.21/0.49  thf(subset_decl,type,
% 0.21/0.49      subset: ( $i > $o ) > ( $i > $o ) > $o ).
% 0.21/0.49  
% 0.21/0.49  thf(subset,definition,
% 0.21/0.49      ( subset
% 0.21/0.49      = ( ^ [X: $i > $o,Y: $i > $o] :
% 0.21/0.49          ! [U: $i] :
% 0.21/0.49            ( ( X @ U )
% 0.21/0.49           => ( Y @ U ) ) ) ) ).
% 0.21/0.49  
% 0.21/0.49  thf(meets_decl,type,
% 0.21/0.49      meets: ( $i > $o ) > ( $i > $o ) > $o ).
% 0.21/0.50  
% 0.21/0.50  thf(meets,definition,
% 0.21/0.50      ( meets
% 0.21/0.50      = ( ^ [X: $i > $o,Y: $i > $o] :
% 0.21/0.50          ? [U: $i] :
% 0.21/0.50            ( ( X @ U )
% 0.21/0.50            & ( Y @ U ) ) ) ) ).
% 0.21/0.50  
% 0.21/0.50  thf(misses_decl,type,
% 0.21/0.50      misses: ( $i > $o ) > ( $i > $o ) > $o ).
% 0.21/0.50  
% 0.21/0.50  thf(misses,definition,
% 0.21/0.50      ( misses
% 0.21/0.50      = ( ^ [X: $i > $o,Y: $i > $o] :
% 0.21/0.50            ~ ? [U: $i] :
% 0.21/0.50                ( ( X @ U )
% 0.21/0.50                & ( Y @ U ) ) ) ) ).
% 0.21/0.50  
% 0.21/0.50  %------------------------------------------------------------------------------
% 0.21/0.50  %------------------------------------------------------------------------------
% 0.21/0.50  thf(thm,conjecture,
% 0.21/0.50      ! [X: $i > $o,Y: $i > $o,Z: $i > $o] :
% 0.21/0.50        ( ( setminus @ X @ ( setminus @ Y @ Z ) )
% 0.21/0.50        = ( union @ ( setminus @ X @ Y ) @ ( intersection @ X @ Z ) ) ) ).
% 0.21/0.50  
% 0.21/0.50  %------------------------------------------------------------------------------
% 0.21/0.50  ------- convert to smt2 : /export/starexec/sandbox/tmp/tmp.HlN7oZ7uve/cvc5---1.0.5_30653.p...
% 0.21/0.50  (declare-sort $$unsorted 0)
% 0.21/0.50  (declare-fun tptp.in ($$unsorted (-> $$unsorted Bool)) Bool)
% 0.21/0.50  (assert (= tptp.in (lambda ((X $$unsorted) (M (-> $$unsorted Bool))) (@ M X))))
% 0.21/0.50  (declare-fun tptp.is_a ($$unsorted (-> $$unsorted Bool)) Bool)
% 0.21/0.50  (assert (= tptp.is_a (lambda ((X $$unsorted) (M (-> $$unsorted Bool))) (@ M X))))
% 0.21/0.50  (declare-fun tptp.emptyset ($$unsorted) Bool)
% 0.21/0.50  (assert (= tptp.emptyset (lambda ((X $$unsorted)) false)))
% 0.21/0.50  (declare-fun tptp.unord_pair ($$unsorted $$unsorted $$unsorted) Bool)
% 0.21/0.50  (assert (= tptp.unord_pair (lambda ((X $$unsorted) (Y $$unsorted) (U $$unsorted)) (or (= U X) (= U Y)))))
% 0.21/0.50  (declare-fun tptp.singleton ($$unsorted $$unsorted) Bool)
% 0.21/0.50  (assert (= tptp.singleton (lambda ((X $$unsorted) (U $$unsorted)) (= U X))))
% 0.21/0.50  (declare-fun tptp.union ((-> $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.21/0.50  (assert (= tptp.union (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (U $$unsorted)) (or (@ X U) (@ Y U)))))
% 0.21/0.50  (declare-fun tptp.excl_union ((-> $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.21/0.50  (assert (= tptp.excl_union (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (U $$unsorted)) (let ((_let_1 (@ Y U))) (let ((_let_2 (@ X U))) (or (and _let_2 (not _let_1)) (and (not _let_2) _let_1)))))))
% 0.21/0.50  (declare-fun tptp.intersection ((-> $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.21/0.50  (assert (= tptp.intersection (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (U $$unsorted)) (and (@ X U) (@ Y U)))))
% 0.21/0.50  (declare-fun tptp.setminus ((-> $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.21/0.50  (assert (= tptp.setminus (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (U $$unsorted)) (and (@ X U) (not (@ Y U))))))
% 0.21/0.50  (declare-fun tptp.complement ((-> $$unsorted Bool) $$unsorted) Bool)
% 0.21/0.50  (assert (= tptp.complement (lambda ((X (-> $$unsorted Bool)) (U $$unsorted)) (not (@ X U)))))
% 0.21/0.50  (declare-fun tptp.disjoint ((-> $$unsorted Bool) (-> $$unsorted Bool)) Bool)
% 0.21/0.50  (assert (= tptp.disjoint (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool))) (= (@ (@ tptp.intersection X) Y) tptp.emptyset))))
% 0.21/0.50  (declare-fun tptp.subset ((-> $$unsorted Bool) (-> $$unsorted Bool)) Bool)
% 0.21/0.50  (assert (= tptp.subset (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool))) (forall ((U $$unsorted)) (=> (@ X U) (@ Y U))))))
% 0.21/0.50  (declare-fun tptp.meets ((-> $$unsorted Bool) (-> $$unsorted Bool)) Bool)
% 0.21/0.50  (assert (= tptp.meets (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool))) (exists ((U $$unsorted)) (and (@ X U) (@ Y U))))))
% 0.21/0.50  (declare-fun tptp.misses ((-> $$unsorted Bool) (-> $$unsorted Bool)) Bool)
% 0.21/0.50  (assert (= tptp.misses (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool))) (not (exists ((U $$unsorted)) (and (@ X U) (@ Y U)))))))
% 0.21/0.50  (assert (not (forall ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (Z (-> $$unsorted Bool))) (let ((_let_1 (@ tptp.setminus X))) (= (@ _let_1 (@ (@ tptp.setminus Y) Z)) (@ (@ tptp.union (@ _let_1 Y)) (@ (@ tptp.intersection X) Z)))))))
% 0.21/0.50  (set-info :filename cvc5---1.0.5_30653)
% 0.21/0.50  (check-sat-assuming ( true ))
% 0.21/0.50  ------- get file name : TPTP file name is SET609^3
% 0.21/0.50  ------- cvc5-thf : /export/starexec/sandbox/solver/bin/cvc5---1.0.5_30653.smt2...
% 0.21/0.50  --- Run --ho-elim --full-saturate-quant at 10...
% 2.54/2.74  % SZS status Theorem for SET609^3
% 2.54/2.74  % SZS output start Proof for SET609^3
% 2.54/2.74  (
% 2.54/2.74  (let ((_let_1 (not (forall ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (Z (-> $$unsorted Bool))) (let ((_let_1 (@ tptp.setminus X))) (= (@ _let_1 (@ (@ tptp.setminus Y) Z)) (@ (@ tptp.union (@ _let_1 Y)) (@ (@ tptp.intersection X) Z)))))))) (let ((_let_2 (= tptp.misses (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool))) (not (exists ((U $$unsorted)) (and (@ X U) (@ Y U)))))))) (let ((_let_3 (= tptp.meets (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool))) (exists ((U $$unsorted)) (and (@ X U) (@ Y U))))))) (let ((_let_4 (= tptp.subset (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool))) (forall ((U $$unsorted)) (=> (@ X U) (@ Y U))))))) (let ((_let_5 (= tptp.disjoint (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool))) (= (@ (@ tptp.intersection X) Y) tptp.emptyset))))) (let ((_let_6 (= tptp.complement (lambda ((X (-> $$unsorted Bool)) (U $$unsorted)) (not (@ X U)))))) (let ((_let_7 (= tptp.setminus (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (U $$unsorted)) (and (@ X U) (not (@ Y U))))))) (let ((_let_8 (= tptp.intersection (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (U $$unsorted)) (and (@ X U) (@ Y U)))))) (let ((_let_9 (= tptp.excl_union (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (U $$unsorted)) (let ((_let_1 (@ Y U))) (let ((_let_2 (@ X U))) (or (and _let_2 (not _let_1)) (and (not _let_2) _let_1)))))))) (let ((_let_10 (= tptp.union (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (U $$unsorted)) (or (@ X U) (@ Y U)))))) (let ((_let_11 (= tptp.singleton (lambda ((X $$unsorted) (U $$unsorted)) (= U X))))) (let ((_let_12 (= tptp.unord_pair (lambda ((X $$unsorted) (Y $$unsorted) (U $$unsorted)) (or (= U X) (= U Y)))))) (let ((_let_13 (= tptp.emptyset (lambda ((X $$unsorted)) false)))) (let ((_let_14 (= tptp.is_a (lambda ((X $$unsorted) (M (-> $$unsorted Bool))) (@ M X))))) (let ((_let_15 (= tptp.in (lambda ((X $$unsorted) (M (-> $$unsorted Bool))) (@ M X))))) (let ((_let_16 (ho_4 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3830))) (let ((_let_17 (ho_4 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3830))) (let ((_let_18 (not _let_17))) (let ((_let_19 (or _let_18 _let_16))) (let ((_let_20 (ho_4 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3830))) (let ((_let_21 (and _let_20 _let_16))) (let ((_let_22 (and _let_20 _let_18))) (let ((_let_23 (or _let_22 _let_21))) (let ((_let_24 (ho_8 (ho_7 (ho_6 k_9 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12))) (let ((_let_25 (ho_4 _let_24 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3830))) (let ((_let_26 (= _let_25 _let_23))) (let ((_let_27 (forall ((BOUND_VARIABLE_1049 |u_(-> $$unsorted Bool)|) (BOUND_VARIABLE_1048 |u_(-> $$unsorted Bool)|) (BOUND_VARIABLE_1047 |u_(-> $$unsorted Bool)|) (BOUND_VARIABLE_967 $$unsorted)) (let ((_let_1 (ho_4 BOUND_VARIABLE_1048 BOUND_VARIABLE_967))) (= (ho_4 (ho_8 (ho_7 (ho_6 k_9 BOUND_VARIABLE_1049) BOUND_VARIABLE_1048) BOUND_VARIABLE_1047) BOUND_VARIABLE_967) (or (and _let_1 (not (ho_4 BOUND_VARIABLE_1049 BOUND_VARIABLE_967))) (and _let_1 (ho_4 BOUND_VARIABLE_1047 BOUND_VARIABLE_967)))))))) (let ((_let_28 (forall ((u |u_(-> $$unsorted Bool)|) (e Bool) (i $$unsorted)) (not (forall ((v |u_(-> $$unsorted Bool)|)) (not (forall ((ii $$unsorted)) (= (ho_4 v ii) (ite (= i ii) e (ho_4 u ii)))))))))) (let ((_let_29 (forall ((x |u_(-> $$unsorted Bool)|) (y |u_(-> $$unsorted Bool)|)) (or (not (forall ((z $$unsorted)) (= (ho_4 x z) (ho_4 y z)))) (= x y))))) (let ((_let_30 (forall ((u |u_(-> _u_(-> $$unsorted Bool)_ $$unsorted Bool)|) (e |u_(-> $$unsorted Bool)|) (i |u_(-> $$unsorted Bool)|)) (not (forall ((v |u_(-> _u_(-> $$unsorted Bool)_ $$unsorted Bool)|)) (not (forall ((ii |u_(-> $$unsorted Bool)|)) (= (ho_8 v ii) (ite (= i ii) e (ho_8 u ii)))))))))) (let ((_let_31 (forall ((x |u_(-> _u_(-> $$unsorted Bool)_ $$unsorted Bool)|) (y |u_(-> _u_(-> $$unsorted Bool)_ $$unsorted Bool)|)) (or (not (forall ((z |u_(-> $$unsorted Bool)|)) (= (ho_8 x z) (ho_8 y z)))) (= x y))))) (let ((_let_32 (forall ((u |u_(-> _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ $$unsorted Bool)|) (e |u_(-> _u_(-> $$unsorted Bool)_ $$unsorted Bool)|) (i |u_(-> $$unsorted Bool)|)) (not (forall ((v |u_(-> _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ $$unsorted Bool)|)) (not (forall ((ii |u_(-> $$unsorted Bool)|)) (= (ho_7 v ii) (ite (= i ii) e (ho_7 u ii)))))))))) (let ((_let_33 (forall ((x |u_(-> _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ $$unsorted Bool)|) (y |u_(-> _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ $$unsorted Bool)|)) (or (not (forall ((z |u_(-> $$unsorted Bool)|)) (= (ho_7 x z) (ho_7 y z)))) (= x y))))) (let ((_let_34 (forall ((u |u_(-> _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ $$unsorted Bool)|) (e |u_(-> _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ $$unsorted Bool)|) (i |u_(-> $$unsorted Bool)|)) (not (forall ((v |u_(-> _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ $$unsorted Bool)|)) (not (forall ((ii |u_(-> $$unsorted Bool)|)) (= (ho_6 v ii) (ite (= i ii) e (ho_6 u ii)))))))))) (let ((_let_35 (forall ((x |u_(-> _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ $$unsorted Bool)|) (y |u_(-> _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ _u_(-> $$unsorted Bool)_ $$unsorted Bool)|)) (or (not (forall ((z |u_(-> $$unsorted Bool)|)) (= (ho_6 x z) (ho_6 y z)))) (= x y))))) (let ((_let_36 (forall ((BOUND_VARIABLE_1017 |u_(-> $$unsorted Bool)|) (BOUND_VARIABLE_1013 |u_(-> $$unsorted Bool)|) (BOUND_VARIABLE_1009 |u_(-> $$unsorted Bool)|) (BOUND_VARIABLE_982 $$unsorted)) (= (and (ho_4 BOUND_VARIABLE_1017 BOUND_VARIABLE_982) (or (not (ho_4 BOUND_VARIABLE_1013 BOUND_VARIABLE_982)) (ho_4 BOUND_VARIABLE_1009 BOUND_VARIABLE_982))) (ho_4 (ho_8 (ho_7 (ho_6 k_5 BOUND_VARIABLE_1017) BOUND_VARIABLE_1013) BOUND_VARIABLE_1009) BOUND_VARIABLE_982))))) (let ((_let_37 (and (forall ((BOUND_VARIABLE_964 (-> $$unsorted Bool)) (BOUND_VARIABLE_965 (-> $$unsorted Bool)) (BOUND_VARIABLE_966 (-> $$unsorted Bool)) (BOUND_VARIABLE_967 $$unsorted)) (let ((_let_1 (@ BOUND_VARIABLE_965 BOUND_VARIABLE_967))) (= (or (and _let_1 (not (@ BOUND_VARIABLE_964 BOUND_VARIABLE_967))) (and _let_1 (@ BOUND_VARIABLE_966 BOUND_VARIABLE_967))) (ll_2 BOUND_VARIABLE_964 BOUND_VARIABLE_965 BOUND_VARIABLE_966 BOUND_VARIABLE_967)))) (forall ((BOUND_VARIABLE_979 (-> $$unsorted Bool)) (BOUND_VARIABLE_980 (-> $$unsorted Bool)) (BOUND_VARIABLE_981 (-> $$unsorted Bool)) (BOUND_VARIABLE_982 $$unsorted)) (= (ll_3 BOUND_VARIABLE_979 BOUND_VARIABLE_980 BOUND_VARIABLE_981 BOUND_VARIABLE_982) (and (@ BOUND_VARIABLE_979 BOUND_VARIABLE_982) (or (not (@ BOUND_VARIABLE_980 BOUND_VARIABLE_982)) (@ BOUND_VARIABLE_981 BOUND_VARIABLE_982)))))))) (let ((_let_38 (MACRO_SR_PRED_TRANSFORM (AND_INTRO (EQ_RESOLVE (PREPROCESS_LEMMA :args (_let_37)) (PREPROCESS :args ((= _let_37 (and _let_27 _let_36))))) (PREPROCESS :args ((and _let_35 _let_34 _let_33 _let_32 _let_31 _let_30 _let_29 _let_28)))) :args ((and _let_27 _let_36 _let_35 _let_34 _let_33 _let_32 _let_31 _let_30 _let_29 _let_28))))) (let ((_let_39 (AND_ELIM _let_38 :args (0)))) (let ((_let_40 (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_39 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3830 QUANTIFIERS_INST_E_MATCHING ((ho_4 (ho_8 (ho_7 (ho_6 k_9 BOUND_VARIABLE_1049) BOUND_VARIABLE_1048) BOUND_VARIABLE_1047) BOUND_VARIABLE_967)))) :args (_let_27))) _let_39 :args (_let_26 false _let_27)))) (let ((_let_41 (ho_8 (ho_7 (ho_6 k_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12))) (let ((_let_42 (ho_4 _let_41 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3830))) (let ((_let_43 (= _let_42 _let_25))) (let ((_let_44 (forall ((z $$unsorted)) (= (ho_4 (ho_8 (ho_7 (ho_6 k_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12) z) (ho_4 (ho_8 (ho_7 (ho_6 k_9 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12) z))))) (let ((_let_45 (not _let_43))) (let ((_let_46 (= _let_41 _let_24))) (let ((_let_47 (not _let_44))) (let ((_let_48 (or _let_47 _let_46))) (let ((_let_49 (AND_ELIM _let_38 :args (8)))) (let ((_let_50 (forall ((BOUND_VARIABLE_1074 |u_(-> $$unsorted Bool)|) (BOUND_VARIABLE_1073 |u_(-> $$unsorted Bool)|) (BOUND_VARIABLE_1072 |u_(-> $$unsorted Bool)|)) (= (ho_8 (ho_7 (ho_6 k_5 BOUND_VARIABLE_1074) BOUND_VARIABLE_1073) BOUND_VARIABLE_1072) (ho_8 (ho_7 (ho_6 k_9 BOUND_VARIABLE_1073) BOUND_VARIABLE_1074) BOUND_VARIABLE_1072))))) (let ((_let_51 (not _let_46))) (let ((_let_52 (not _let_50))) (let ((_let_53 (not (forall ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (Z (-> $$unsorted Bool))) (= (@ (@ (@ ll_2 Y) X) Z) (@ (@ (@ ll_3 X) Y) Z)))))) (let ((_let_54 (ASSUME :args (_let_15)))) (let ((_let_55 (ASSUME :args (_let_14)))) (let ((_let_56 (EQ_RESOLVE (ASSUME :args (_let_13)) (MACRO_SR_EQ_INTRO :args (_let_13 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_57 (EQ_RESOLVE (ASSUME :args (_let_12)) (MACRO_SR_EQ_INTRO :args (_let_12 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_58 (EQ_RESOLVE (ASSUME :args (_let_11)) (MACRO_SR_EQ_INTRO :args (_let_11 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_59 (ASSUME :args (_let_10)))) (let ((_let_60 (ASSUME :args (_let_9)))) (let ((_let_61 (ASSUME :args (_let_8)))) (let ((_let_62 (ASSUME :args (_let_7)))) (let ((_let_63 (ASSUME :args (_let_6)))) (let ((_let_64 (EQ_RESOLVE (ASSUME :args (_let_1)) (TRANS (MACRO_SR_EQ_INTRO (AND_INTRO (EQ_RESOLVE (ASSUME :args (_let_2)) (MACRO_SR_EQ_INTRO :args (_let_2 SB_DEFAULT SBA_FIXPOINT))) (EQ_RESOLVE (ASSUME :args (_let_3)) (MACRO_SR_EQ_INTRO :args (_let_3 SB_DEFAULT SBA_FIXPOINT))) (EQ_RESOLVE (ASSUME :args (_let_4)) (MACRO_SR_EQ_INTRO :args (_let_4 SB_DEFAULT SBA_FIXPOINT))) (EQ_RESOLVE (EQ_RESOLVE (ASSUME :args (_let_5)) (MACRO_SR_EQ_INTRO :args (_let_5 SB_DEFAULT SBA_FIXPOINT))) (MACRO_SR_EQ_INTRO (AND_INTRO _let_63 _let_62 _let_61 _let_60 _let_59 _let_58 _let_57 _let_56 _let_55 _let_54) :args ((= tptp.disjoint (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool))) (= tptp.emptyset (@ (@ tptp.intersection X) Y)))) SB_DEFAULT SBA_FIXPOINT))) _let_63 _let_62 _let_61 _let_60 _let_59 _let_58 _let_57 _let_56 _let_55 _let_54) :args (_let_1 SB_DEFAULT SBA_FIXPOINT)) (PREPROCESS :args ((= (not (forall ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (Z (-> $$unsorted Bool))) (= (lambda ((U $$unsorted)) (and (@ X U) (not (and (@ Y U) (not (@ Z U)))))) (lambda ((U $$unsorted)) (let ((_let_1 (@ X U))) (or (and _let_1 (not (@ Y U))) (and _let_1 (@ Z U)))))))) _let_53))) (PREPROCESS :args ((= _let_53 _let_52))))))) (let ((_let_65 (or))) (let ((_let_66 (_let_47))) (let ((_let_67 (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (SCOPE (SKOLEMIZE (ASSUME :args _let_66)) :args _let_66)) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_47) _let_44))) (REFL :args (_let_45)) :args _let_65)) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_48)) :args ((or _let_46 _let_47 (not _let_48)))) (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (SCOPE (SKOLEMIZE _let_64) :args (_let_52))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_52) _let_50))) (REFL :args (_let_51)) :args _let_65)) _let_64 :args (_let_51 true _let_50)) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE _let_49 :args (_let_24 _let_41 QUANTIFIERS_INST_ENUM)) :args (_let_29)))) _let_49 :args (_let_48 false _let_29)) :args (_let_47 true _let_46 false _let_48)) :args (_let_45 true _let_44)))) (let ((_let_68 (and _let_20 _let_19))) (let ((_let_69 (= _let_42 _let_68))) (let ((_let_70 (not _let_42))) (let ((_let_71 (_let_43))) (let ((_let_72 (AND_ELIM _let_38 :args (1)))) (let ((_let_73 (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE _let_72 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3830 QUANTIFIERS_INST_E_MATCHING ((ho_4 (ho_8 (ho_7 (ho_6 k_5 BOUND_VARIABLE_1017) BOUND_VARIABLE_1013) BOUND_VARIABLE_1009) BOUND_VARIABLE_982)))) :args (_let_36)))) _let_72 :args (_let_69 false _let_36)))) (let ((_let_74 (not _let_69))) (let ((_let_75 (_let_69))) (let ((_let_76 (not _let_26))) (let ((_let_77 (not _let_23))) (let ((_let_78 (_let_26))) (let ((_let_79 (not _let_68))) (let ((_let_80 (not _let_20))) (let ((_let_81 (MACRO_SR_PRED_INTRO :args ((= (not _let_18) _let_17))))) (let ((_let_82 (_let_22))) (let ((_let_83 (not _let_19))) (let ((_let_84 (_let_19))) (let ((_let_85 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args _let_84) :args ((or _let_18 _let_16 _let_83))) (CNF_AND_NEG :args (_let_21)) (REORDERING (EQ_RESOLVE (CNF_AND_NEG :args _let_82) (CONG (REFL :args _let_82) (REFL :args (_let_80)) _let_81 :args _let_65)) :args ((or _let_17 _let_22 _let_80))) (CNF_OR_NEG :args (_let_23 1)) (CNF_OR_NEG :args (_let_23 0)) (REORDERING (CNF_AND_POS :args (_let_68 1)) :args ((or _let_19 _let_79))) (REORDERING (CNF_AND_POS :args (_let_68 0)) :args ((or _let_20 _let_79))) (REORDERING (CNF_EQUIV_POS2 :args _let_78) :args ((or _let_25 _let_77 _let_76))) _let_40 (REORDERING (CNF_EQUIV_POS1 :args _let_75) :args ((or _let_70 _let_68 _let_74))) _let_73 (CNF_EQUIV_NEG2 :args _let_71) _let_67 :args (_let_70 true _let_16 false _let_17 true _let_21 true _let_22 false _let_19 false _let_20 true _let_23 false _let_26 false _let_68 false _let_69 true _let_25 true _let_43)))) (let ((_let_86 (not _let_22))) (let ((_let_87 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_EQUIV_POS2 :args _let_75) :args ((or _let_42 _let_79 _let_74))) _let_85 _let_73 :args (_let_79 true _let_42 false _let_69)))) (let ((_let_88 (CNF_AND_NEG :args (_let_68)))) (let ((_let_89 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_23)) :args ((or _let_22 _let_21 _let_77))) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_19 0)) (CONG (REFL :args _let_84) _let_81 :args _let_65)) :args ((or _let_17 _let_19))) _let_88 _let_87 (REORDERING (CNF_AND_POS :args (_let_22 1)) :args ((or _let_18 _let_86))) (REORDERING (CNF_AND_POS :args (_let_22 0)) :args ((or _let_20 _let_86))) :args (_let_86 true _let_19 true _let_68 true _let_17 false _let_20)) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_EQUIV_POS1 :args _let_78) :args ((or (not _let_25) _let_23 _let_76))) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_EQUIV_NEG1 :args _let_71) :args ((or _let_42 _let_25 _let_43))) _let_85 _let_67 :args (_let_25 true _let_42 true _let_43)) _let_40 :args (_let_23 false _let_25 false _let_26)) :args (_let_21 true _let_22 false _let_23)))) (let ((_let_90 (not _let_21))) (SCOPE (SCOPE (MACRO_RESOLUTION_TRUST (CNF_OR_NEG :args (_let_19 1)) (MACRO_RESOLUTION_TRUST _let_88 _let_87 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_AND_POS :args (_let_21 0)) :args ((or _let_20 _let_90))) _let_89 :args (_let_20 false _let_21)) :args (_let_83 true _let_68 false _let_20)) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_AND_POS :args (_let_21 1)) :args ((or _let_16 _let_90))) _let_89 :args (_let_16 false _let_21)) :args (false true _let_19 false _let_16)) :args (_let_15 _let_14 _let_13 _let_12 _let_11 _let_10 _let_9 _let_8 _let_7 _let_6 _let_5 _let_4 _let_3 _let_2 _let_1 true)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
% 2.54/2.75  )
% 2.54/2.75  % SZS output end Proof for SET609^3
% 2.54/2.75  % cvc5---1.0.5 exiting
% 2.54/2.75  % cvc5---1.0.5 exiting
%------------------------------------------------------------------------------